package com.testpro.easyrest.Core.Cache;

import io.restassured.http.Cookies;
import io.restassured.http.Headers;
import io.restassured.specification.MultiPartSpecification;
import io.restassured.specification.ProxySpecification;

import java.util.List;
import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;

/** 全局缓存 用于用例依赖情况的取值 */
public class RequestCache {
  public static final String method = "METHOD";
  public static final ConcurrentHashMap<String, String> METHOD = new ConcurrentHashMap<>();
  public static final String uri = "URI";
  public static final ConcurrentHashMap<String, String> URI = new ConcurrentHashMap<>();
  public static final String Proxy = "PROXY";
  public static final ConcurrentHashMap<String, ProxySpecification> PROXY =
      new ConcurrentHashMap<>();
  public static final String Requestparams = "REQUEST_PARAMS";
  public static final ConcurrentHashMap<String, Map<String, String>> REQUEST_PARAMS =
      new ConcurrentHashMap<>();
  public static final String QueryParams = "QUERY_PARAMS";
  public static final ConcurrentHashMap<String, Map<String, String>> QUERY_PARAMS =
      new ConcurrentHashMap<>();
  public static final String FormParams = "FORM_PARAMS";
  public static final ConcurrentHashMap<String, Map<String, String>> FORM_PARAMS =
      new ConcurrentHashMap<>();
  public static final String PathParams = "PATH_PARAMS";
  public static final ConcurrentHashMap<String, Map<String, String>> PATH_PARAMS =
      new ConcurrentHashMap<>();
  public static final String Headers = "HEADERS";
  public static final ConcurrentHashMap<String, Headers> HEADERS = new ConcurrentHashMap<>();
  public static final String Cookies = "COOKIES";
  public static final ConcurrentHashMap<String, Cookies> COOKIES = new ConcurrentHashMap<>();
  public static final String Multiparts = "MULTIPARTS";
  public static final ConcurrentHashMap<String, List<MultiPartSpecification>> MULTIPARTS =
      new ConcurrentHashMap<>();
  public static final String Body = "BODY";
  public static final ConcurrentHashMap<String, String> BODY = new ConcurrentHashMap<>();

  private RequestCache() {}
}
